home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / netscape_fasttrack.nasl < prev    next >
Text File  |  2005-01-14  |  3KB  |  119 lines

  1. #
  2. # This script was written by Renaud Deraison <deraison@cvs.nessus.org>
  3. #
  4. # See the Nessus Scripts License for details
  5. #
  6.  
  7. if(description)
  8. {
  9.  script_id(10156);
  10.  script_bugtraq_id(481);
  11.  script_version ("$Revision: 1.20 $");
  12.  script_cve_id("CVE-1999-0239");
  13.  name["english"] = "Netscape FastTrack 'get'";
  14.  name["francais"] = "Netscape FastTrack 'get'";
  15.  script_name(english:name["english"], francais:name["francais"]);
  16.  
  17.  desc["english"] = "When the remote web server is
  18. issued a request with a lower-case 'get', it will return
  19. a directory listing even if a default page such as index.html is 
  20. present. 
  21.  
  22. Example :
  23.  
  24.         get / HTTP/1.0
  25.         
  26. Will return a listing of the root directory.
  27.  
  28. This allows an attacker to gain valuable information about the
  29. directory structure of the remote host and could reveal the
  30. presence of files which are not intended to be visible.
  31.  
  32. Solution : Upgrade your server to the latest version.
  33.  
  34. Risk factor : Medium";
  35.  
  36.  
  37.  desc["francais"] = "Le serveur web distant
  38. renvoie le listing du contenu d'un dossier
  39. plutot que le contenu du fichier index.html
  40. situΘ dans ce dossier lorsqu'on lui envoie
  41. une commande 'get' en minuscules.
  42. Exemple :
  43.         get / HTTP/1.0
  44.  
  45. Renverra la liste des fichiers contenus dans
  46. le repertoire racine distant.
  47.  
  48. Ce problΦme permet α un pirate de dΘcouvrir
  49. des fichiers cachΘs sur votre serveur.
  50.  
  51. Solution : Mettez α jour votre serveur web.
  52.  
  53. Facteur de risque : Moyen";
  54.  script_description(english:desc["english"], francais:desc["francais"]);
  55.  
  56.  summary["english"] = "'get / ' gives a directory listing";
  57.  summary["francais"] = "'get / ' donne un listing du dossier";
  58.  
  59.  script_summary(english:summary["english"], francais:summary["francais"]);
  60.  
  61.  script_category(ACT_GATHER_INFO);
  62.  
  63.  
  64.  script_copyright(english:"This script is Copyright (C) 1999 Renaud Deraison",
  65.         francais:"Ce script est Copyright (C) 1999 Renaud Deraison");
  66.  family["english"] = "CGI abuses";
  67.  family["francais"] = "Abus de CGI";
  68.  script_family(english:family["english"], francais:family["francais"]);
  69.  script_dependencie("find_service.nes", "httpver.nasl", "http_version.nasl");
  70.  script_require_ports("Services/www", 80);
  71.  script_require_keys("www/netscape-fasttrack");
  72.  exit(0);
  73. }
  74.  
  75. #
  76. # The script code starts here
  77. #
  78.  
  79. include("http_func.inc");
  80. include("http_keepalive.inc");
  81.  
  82. bad = "<title>index of /</title>";
  83.  
  84.  
  85.  
  86. function check(pattern, port)
  87. {
  88.  local_var req, res;
  89.  
  90.  
  91.  req = http_get(item:"/", port:port);
  92.  req = str_replace(string:req, find:pattern, replace:"get", count:1);
  93.  res = http_keepalive_send_recv(port:port, data:req);
  94.  if ( res == NULL ) exit(0);
  95.  res = tolower(res);
  96.  if(bad >< res){
  97.      security_warning(port);
  98.     exit(0);
  99.   }
  100. }
  101.  
  102.  
  103. port = get_http_port(default:80);
  104.  
  105. if(!get_port_state(port))exit(0);
  106.  
  107. req = http_get(item:"/", port:port);
  108. res = http_keepalive_send_recv(port:port, data:req);
  109. if( res == NULL ) exit(0);
  110.  
  111. res = tolower(res);
  112. if(bad >< res) exit(0);
  113.  
  114. # See www.securityfocus.com/bid/481/exploit
  115.  
  116. check(pattern:"GET", port:port);
  117. check(pattern:"GET ", port:port);
  118.  
  119.